Ext.define('BenBen.common.SearchForm', {
	extend : 'Ext.form.Panel',
	bodyStyle : 'padding:5px',
	frame : false,
	border : false,
	columnNum : 4,// 默认每行只排四列
	initComponent : function() {
		var form = this;
		var defaultConfig = {
			layout : 'form',
			margin: '5 5 5 5',
			columnWidth : 1 / this.columnNum
		};
		this.fieldSetItem =  [{
			defaults : defaultConfig,
			border : false,
			layout : 'column',
			items : form.searchItems    
		},{
			border : false,
			bodyStyle : 'padding:5px',
			items : [{
				text : '查询',
				iconCls : 'gridsearch',
				xtype : 'button',
				handler : function() {
					var params = {};

					function createParams2Store(item){
						if (item.isSearch){
							if(item.value){
								params[item.name] = item.value;
							}

							return;
						}
						var mixItems = item.items;
						if (mixItems){
							for (var i=0; i<mixItems.length; ++i){
								createParams2Store(mixItems.get(i));
							}
						}
					}
					createParams2Store(form);
					
					form.gridStore.load({
						params  : params
					});
						
				}
			},{
				text : '清空',
				xtype : 'button',
				iconCls : 'formrefresh',
				handler : function() {
					this.form.reset();
				},
				scope : this
			}] 
		}];
		var fieldSet = new Ext.form.FieldSet({
			title : '查询条件',
			autoHeight : true,
			border : true,
			labelWidth : form.labelWidth || 50,
			bodyStyle : 'padding:5px',
			items : form.fieldSetItem
		});
		
		this.items = [fieldSet];

		this.callParent(arguments);
	}
});	